/*
 * mechant2.h
 *
 *  Created on: 5 mai 2011
 *      Author: benjamin
 */

#ifndef MECHANT2_H_
#define MECHANT2_H_

#include "constante.h"



typedef struct donnees_mechant{
	char* nom;
	double* vitesse;
	int* saut;
	int* direction;
	double* pos_x;
	double* pos_y;
	int* ensaut;
	double* pos_y0;
	int* mort ;
	BITMAP** images_mechant;
} mechant;


mechant allouer_mechant(mechant j) ;
void liberer_mechant(mechant j) ;
mechant init_mechant(int NUMERO_BLOC_LARGEUR, int NUMERO_BLOC_HAUTEUR) ;
void deplacer_gauche_mechant(mechant j) ;
void gravite_mechant(mechant j, int carte[NB_BLOCS_LARGEUR][NB_BLOCS_HAUTEUR]) ;
void afficher_mechant(mechant j, BITMAP* buffer, char carte[LONGEUR_NIVEAU][NB_BLOCS_LARGEUR], int decalage) ;
int collision_droite_mechant(int posx1, int posy1, int h1, int l1, int posx2, int posy2, int h2, int l2) ;
int collision_gauche_mechant(int posx1, int posy1, int h1, int l1, int posx2, int posy2, int h2, int l2) ;
int collision_haut_mechant(int posx1, int posy1, int h1, int l1, int posx2, int posy2, int h2, int l2) ;
int collision_bas_mechant(int posx1, int posy1, int h1, int l1, int posx2, int posy2, int h2, int l2) ;
int collision_droite_tous_mechant(mechant j,char carte[LONGEUR_NIVEAU][NB_BLOCS_HAUTEUR]) ;
int collision_gauche_tous_mechant(mechant j,char carte[LONGEUR_NIVEAU][NB_BLOCS_HAUTEUR]) ;
int collision_haut_tous_mechant(mechant j,char carte[LONGEUR_NIVEAU][NB_BLOCS_HAUTEUR]) ;
int collision_bas_tous_mechant(mechant j,char carte[LONGEUR_NIVEAU][NB_BLOCS_HAUTEUR]) ;


#endif /* MECHANT2_H_ */
